#include "BulletDynamics/Featherstone/btMultiBodyPoint2Point.h"
#ifdef __cplusplus
extern "C" {
#endif
btMultiBodyPoint2Point* bullet_NewbtMultiBodyPoint2Point(btMultiBody* body,int link,btRigidBody* bodyB,btVector3* pivotInA,btVector3* pivotInB){
	btMultiBody * c_arg_body=(btMultiBody *)(void*)(body);
	int c_arg_link=link;
	btRigidBody * c_arg_bodyB=(btRigidBody *)(void*)(bodyB);
	btVector3 const& c_arg_pivotInA=(btVector3 const&)(*pivotInA);
	btVector3 const& c_arg_pivotInB=(btVector3 const&)(*pivotInB);
	btMultiBodyPoint2Point* wrap_out = new btMultiBodyPoint2Point(c_arg_body,c_arg_link,c_arg_bodyB,c_arg_pivotInA,c_arg_pivotInB);
	return wrap_out;
}

btMultiBodyPoint2Point* bullet_NewbtMultiBodyPoint2Point1(btMultiBody* bodyA,int linkA,btMultiBody* bodyB,int linkB,btVector3* pivotInA,btVector3* pivotInB){
	btMultiBody * c_arg_bodyA=(btMultiBody *)(void*)(bodyA);
	int c_arg_linkA=linkA;
	btMultiBody * c_arg_bodyB=(btMultiBody *)(void*)(bodyB);
	int c_arg_linkB=linkB;
	btVector3 const& c_arg_pivotInA=(btVector3 const&)(*pivotInA);
	btVector3 const& c_arg_pivotInB=(btVector3 const&)(*pivotInB);
	btMultiBodyPoint2Point* wrap_out = new btMultiBodyPoint2Point(c_arg_bodyA,c_arg_linkA,c_arg_bodyB,c_arg_linkB,c_arg_pivotInA,c_arg_pivotInB);
	return wrap_out;
}

btVector3* bullet_btMultiBodyPoint2Point_getPivotInB(btMultiBodyPoint2Point* c_this){
	btVector3 const& c_out = c_this->getPivotInB();
	btVector3* wrap_out = (btVector3*)(&c_out);
	return wrap_out;
}

#ifdef __cplusplus
}
#endif
